Flash memory program and erase operations

ABSTRACT

A flash memory device includes a charge pump having a capacity that is preset to a particular value. The flash memory device includes a measuring circuit to measure the actual capacity of the charge pump and to reset the capacity of the charge pump to a value based on the measured capacity.

BACKGROUND

[0001] This invention relates to flash memory program and eraseoperations.

[0002] There has been a recent trend toward increasing the speed offlash memory devices such as flash electrically erasable programmableread only memory (flash EEPROM) devices that are used in portablecomputers and other devices. Flash memory devices contain an array ofmemory cells which are utilized to store data. These devices containcharge pump circuitry for converting an input voltage to a high outputvoltage and current necessary for programming and erasing the data inthe memory cells. The output voltage and current determine the outputcapacity of the charge pump.

[0003] One problem encountered during the process of manufacturing thecharge pump circuitry is that the actual output capacity of the chargepump may vary from the optimal output capacity. Often, charge pumps thatare produced lack sufficient output capacity to program and erase thememory cells. This results in an undesirable increase in the time toprogram and erase the cells and a decrease in throughput. Charge pumpsalso may produce excessive output capacity resulting in an increase inpower consumption. Furthermore, once the flash memory devices are placedin an electronic device such as a portable computer, variations in inputvoltage and in temperature also may cause the output capacity of thecharge pump to decrease or increase.

BRIEF DESCRIPTION OF THE DRAWINGS

[0004]FIG. 1 is a block diagram illustrating a computer system.

[0005]FIG. 2 is a graph showing the output capacity of a charge pumpcircuit.

[0006]FIG. 3A is a block diagram of a flash memory device.

[0007]FIG. 3B is a table listing examples of voltages for programming,erasing, and reading a flash memory device.

[0008]FIG. 4 is a block diagram of a charge pump circuit.

[0009]FIG. 5 is a block diagram of a charge pump circuit.

[0010]FIG. 6 is a simplified flow chart illustrating a method ofpracticing the invention.

DETAILED DESCRIPTION

[0011] As shown in FIG. 1, a computer system 10 includes a centralprocessing unit (CPU) 12 that is coupled to one or more flash memorydevices, such as flash memory device 14, over a computer bus 13. The CPU12 accesses data and programs that are stored in the flash memory device14 to carry out the various operations of the computer system 10.

[0012] The flash memory device 14 includes a flash memory array 16 whichcontains an array of flash memory cells. A charge pump circuit 18 can beused to program and erase data in each flash memory cell. The chargepump circuit 18 can be powered by a low input voltage source. Thisvoltage source is converted by the charge pump circuit 18 to a higheroutput voltage source which then is used to program and erase the memorycells in the flash memory array 16. Variations in temperature and inputvoltage could potentially impact the operation of the charge pumpcircuit 18 including the time needed to program the flash memory array16. Techniques for compensating for such variations are discussed below.

[0013]FIG. 2 is a graph 20 showing the output capacity of a charge pumpcircuit. The horizontal axis represents the operating conditions of thecharge pump circuit, and the vertical axis represents the outputcapacity in terms of electrical current that a charge pump circuit canproduce. The load current line 22 represents current that the flashmemory array 16 requires during the programming and erasing process, andthe pump current line 21 represents the current that the pump chargecircuit 18 is capable of producing. An increase in operating conditions,as shown by the arrow 24, can cause an increase in memory arrayprocessing such as faster programming and/or erasing periods. Suchoperating conditions include, for example, a reduction in temperature atthe charge pump circuit, an increase in input voltage to the pumpcircuit, as well as other operating conditions. Can also include “fast”circuits as a result of normal variations during the manufacturingprocess.

[0014] As the operating conditions increase, the magnitude of the pumpcurrent 21 increases at a rate greater than the rate of the load current22. As a result, excess current capacity (represented by referencenumber 23) is available at the charge pump circuit. As discussed below,the excess current capacity can be used to increase the speed ofprogramming and erasing the memory cells to provide an increase in datathroughput.

[0015] As shown in FIG. 3A, the flash memory device 14 includes acontroller logic circuit 34 containing logic and instructions forcontrolling the operation of the flash memory device. Such operationsinclude programming and erasing an array of flash memory cells 15associated with the flash memory array 16. Although only one flashmemory cell 15 is shown, the flash memory array 16 typically includesmultiple flash memory cells. Each memory cell 15 can be implemented, forexample, as a floating gate field effect transistor. In addition, eachflash memory cell 15 can be programmed and erased by applying signalswith different voltage levels to a gate terminal Vg, a source terminalVs, and a drain terminal Vd of the flash memory cell.

[0016] A group of flash memory cells 15 can be organized into a memorysegment having a particular length such as eight, sixteen or thirty-twomemory cells. The memory cells 15 can be addressed or referenced eitheras a whole segment or individually at a bit level within each memorysegment. The controller logic circuit 34 uses one or more decodercircuits to address a particular flash memory cell or groups of flashmemory cells. For example, a bitline decoder circuit 35 can be used toaddress a particular memory bit within a memory segment by applying avoltage to the drain terminal Vd of a group of memory cells within thememory segment. Similarly, a wordline decoder circuit 36 can be used toaddress a particular memory segment in the flash memory cell by applyinga voltage to the gate terminal Vg. A source decoder circuit 37 can beused to address the source terminal Vd of each memory cell.

[0017] The flash memory device 14 includes one or more charge pumpcircuits which are used to provide the voltages and currents forprogramming and erasing the flash memory cells 15. A charge pump ispowered by an input voltage Vcc and can be converted to a higher voltageusing conventional techniques. For example, a 6-volt charge pump circuit18 a is powered by an input voltage Vcc of 1.8 volts which it convertsto an output voltage of 6 volts. There also may be a need to have avoltage signal that is lower than the input voltage Vcc. For example, a1-volt divider circuit 19 can be used to convert the 1.8 volt inputvoltage Vcc to an output voltage of 1 volt. The output from the 1-voltdivider circuit 19 and the 6-volt charge pump circuit 18 a are used bythe bitline decoder circuit 35 to provide the necessary voltages andcurrents to the drain terminal Vd of each flash memory cell 15.

[0018] The wordline decoder circuit 36 selects the outputs from one ormore charge pumps such as a 5-volt charge pump circuit 18 b, a 10-voltcharge pump circuit 18 c and a −10-volt charge pump circuit 18 d tosupply voltages and currents to the gate terminal Vg of the flash memorycells 15. The source decoder circuit 37 takes the output from a 5-voltcharge pump circuit 18 e and applies it to the source terminal Vs of theflash memory cells 15.

[0019]FIG. 3B shows a table 40 listing examples of voltages to program,erase and read the flash memory cells 15 in the flash memory array 16.To program the flash memory cells 15 in the illustrated implementation,the voltage level at the gate terminal Vg must be about 10 volts, thevoltage at the drain terminal Vd must be about 6 volts, and the voltagelevel at the source terminal Vs has to be about 0 volts. The controllerlogic circuit 34 is responsible for selecting the appropriate chargepump circuit associated with each decoder circuit. For example, in theprogramming process discussed above, the control logic circuit 34provides six volts at the drain terminal Vd by selecting the 6-volt pumpcircuit 18 a through the bitline decoder circuit 35. Likewise, thewordline decoder circuit 36 is used to select the appropriate chargepump circuit to apply the necessary voltages to the gate terminal Vg,and the source decoder circuit 37 is used to select the appropriatecharge pump circuit to apply the necessary voltages to the sourceterminal Vs. Thus, one or more charge pump circuits with differentoutput capacities can be used to program, erase and read the data in theflash memory array 16.

[0020]FIG. 4 illustrates further details of the charge pump circuit 18a. The charge pump circuit 18 a, as discussed above, is used to providethe voltages and currents to the drain terminal Vd of each flash memorycell 15 during the programming process. The techniques discussed belowin connection with the charge pump circuit 18 a also are applicable tothe other charge pump circuits shown in FIG. 3A.

[0021] The charge pump circuit 18 a includes a charge pump 40 to convertan input voltage Vcc of 1.8 volts to an output voltage (Vout) that ishigher than the input voltage Vcc. The charge pump 40 uses a booster 42to boost the input voltage Vcc to a higher voltage level. The boosterstage can include a series of capacitors driven by a clock signal froman internal voltage controlled oscillator (VCO).

[0022] The higher level voltage is fed to a regulator circuit 44 whichcontains a voltage regulator portion 44 a and a current regulatorportion 44 b. In one implementation, the voltage regulator circuit 44includes a voltage comparator with a first input fed by the output ofthe booster 42 and a second input fed by a constant reference voltage.The regulator circuit 44 regulates the output capacity of the chargepump 40 including an output voltage (Vout) and an output current (Iout).The output voltage Vout and the output current Iout can be adjusted by ameasuring circuit 46 through signal lines B1 and B2.

[0023] By using a constant current method, the measuring circuit 46 cancharacterize the capacity of the charge pump 40 by measuring the outputvoltage Vout while the output current Iout is maintained at a constantlevel. The measuring circuit 46 uses a voltage sensor 48 to measure thevoltage level of the output voltage Vout. It then sends to the voltageregulator portion 44 a of the regulator circuit 44 a signal on line B2based on the measured voltage.

[0024] The signal on line B2 is used by the voltage regulator portion 44a to control the level of the output voltage Vout. For example, thecharge pump circuit 18 a can be preset to generate an output voltageVout of six volts and an output current Iout of two milliamps. If theresults of the measurement indicate that the output voltage Vout isgreater than the preset value of 6 volt, the measuring circuit 46 sendsa signal having logical high value of ‘1’ over line B2. That causes thevoltage regulator portion 44 a to increase the output voltage Vout toseven volts and to maintain the output current Iout at two milliamps. Ifthe results of the measurement indicate that the output voltage Vout isequal to the preset value of six volts, it sends a signal having alogical low value of ‘0’ over line B2. In that case, the voltageregulator portion 44 a maintains the output voltage Vout at six voltsand the output current Iout at two milliamps.

[0025] In a similar fashion, by using a constant voltage method, themeasuring circuit 46 also is capable of measuring the capacity of thecharge pump 40 by measuring the output current Iout while the outputvoltage Vout is kept constant. The measuring circuit 46 uses a currentsensor 49 to measure the current level at the output current Iout. Inthis case, however, the measuring circuit 46 sends a signal over line B1to the current regulator portion 44 b of the regulator circuit 44. Thevalue of the signal sent over line B1 is based on the measured currentand is used by the regulator circuit 44 to control the level of theoutput current Iout.

[0026] For example, as discussed above, the charge pump circuit 18 a canbe preset to generate an output voltage of six volts at an outputcurrent of two milliamps. If the results of the measurement indicatethat the output current lout is greater than the preset value of twomilliamps, the measuring circuit 46 can send a signal of logical highvalue of ‘1’ over the line B1. In response, the current regulatorportion 44 b can increase the output current lout to three milliamps butmaintain the output voltage Vout at six volts. If the results of themeasurement indicate that the output current lout is equal to the presetvalue of two milliamps, the measuring circuit 46 can send a signal overthe line B1 having a logical low value ‘O’. The current regulatorportion 44 b maintains the output current lout at two milliamps and theoutput voltage Vout at six volts.

[0027] The measuring circuit 46 can conduct the capacity measurementsduring manufacturing of the fast memory device 14. Access line 47provides external access to the capacity measurements which can beintegrated by external manufacturing equipment. The externalmanufacturing equipment then can determine the actual charge pumpcapacity and reset the capacity to the appropriate setting. Suchcapacity measurements include, for example, the “fast” or “slow” pumpcircuit condition, the voltage level of the input voltage Vcc or thetemperature in close proximity to the charge pump. The signals that aresent over the lines B1 and B2 can be designed to cause the regulatorcircuit 44 to permanently set the output voltage Vout and the outputcurrent lout to predetermined values based on the levels measured by themeasuring circuit 46. The signals sent over the lines B1 and B2 can bebinary in nature so that a logical ‘1’ can be represented by a highvoltage level such as 1.8 volts while a logical ‘0’ can be representedby a low voltage level such as zero volts.

[0028] As illustrated in FIG. 5, the charge pump circuits, such ascharge pump circuit 18 a, can be used to provide the voltages andcurrents for programming and erasing the flash memory cells 15 in thememory array 16. Many of the elements of the charge pump discussed abovein connection with FIG. 4, such as the structure and the function of thecharge pump 40, remain the same. However, one difference in thisembodiment is the presence of a temperature sensor 47 in the measurementcircuit 46.

[0029] The temperature sensor 47 is used to measure the temperature ofthe charge pump circuit 18 a or the charge pump 40. It can be placedwithin the charge pump circuit 18 a where it can measure the internaltemperature or it can be placed externally where it can measure theexternal temperature of the charge pump circuit 18 a. Internal placementrefers to the placement of the sensor 47 inside of an integrated circuitthat houses the charge pump circuit 18 a, whereas external placementrefers to the placement of the sensor outside of the integrated circuit.The temperature sensor 47 can be a conventional sensor with an operatingrange that matches the operating temperature range of the flash devicesuch as −40° C. to 85° C.

[0030] An output analog signal representing the value of the measuredtemperature is sent to an analog-to-digital (A/D) converter 41. The A/Dconverter 41 generates a digital signal representing the analog value ofthe measured temperature. In one implementation, the A/D converter 41can be a conventional converter that is calibrated to accept signals inthe range of the voltage source Vcc and the output level of thetemperature sensor 47.

[0031] The measuring circuit 46 measures the capacity of the charge pump40 by measuring the input voltage Vcc using a voltage sensor 48. Anoutput analog signal representing the value of the measured voltage issent to the A/D converter 41. The A/D converter 41 converts the analogsignal to a digital signal representing the analog value of the measuredvoltage.

[0032] A sensor logic circuit 43 processes the digital signals from theA/D converter 41. The sensor logic circuit 43 can contain digital logicconfigured to make decisions based on the values of the digital signalswhich represent the measured values of the temperature and the inputvoltage Vcc. The sensor logic circuit 43 sends a signal over a line B2to the voltage regulator portion 44 a of the regulator circuit 44. Italso sends a signal over line B1 to the current regulator portion 44 bof the regulator circuit 44. The value of the signals over lines B1 andB2 are based on the values of the measured voltage and temperature. Inaddition, line B3 is used to send a signal to the controller logiccircuit 34 to allow the circuit to recognize the results of themeasurement and take appropriate action.

[0033] For example, the charge pump circuit 18 a is powered by an inputvoltage Vcc of 1.8 volts and is preset to generate an output voltageVout of six volts at an output current Iout of two milliamps. If theresults of the temperature measurement indicate that the temperature isless than 25° C. and the input voltage Vcc measurement indicate that thevoltage is greater than 1.8 volts, then a logical high value of ‘1’ issent over line B1, a logical low value of ‘0’ is sent over line B2, anda logical high value of ‘1’ is sent over B3. As a result, the voltageregulator portion 44 a increases the output voltage Vout from six voltsto seven volts but maintains the output current Iout at two milliamps.In addition, the signal over line B3 enables the controller logiccircuit 34 to recognize this condition and take appropriate action.

[0034] On the other hand, if the results of the measurement indicatethat either the input voltage Vcc is less than 1.8 volts or thetemperature is greater than 25° C., then a logical low value of ‘0’ issent over lines B1, B2 and B3. This causes the voltage regulator portion44 a to maintain the output voltage Vout at six volts and the outputcurrent Iout at two milliamps.

[0035] The measurements conducted in this embodiment can be taken whilethe circuit is operating within a computer system such as a cellularphone or a portable computer. This has the advantage of allowing thecapacity of a charge pump circuit to be adjusted dynamically based onreal time operating conditions. Microcode (instructions) within thecontroller logic circuit 34 can be modified to allow the charge pump 18a to dynamically respond to the changes in operating conditions.

[0036]FIG. 6 illustrates operation of the charge pumps, such as thecharge pump 18 a. The capacity of a charge pump can be preset at 60 to adesired value. In a flash memory device 14 that contains multiple chargepump circuits, the capacity of each charge pump can be preset torespective predetermined values during the design and manufacturingprocess. The predetermined values can include a preset output currentIout and a preset output voltage Vout.

[0037] Once the capacity of the charge pump has been preset to desiredvalues, the actual capacity of the charge pump is measured at 62. Asdiscussed above, a measuring circuit can be used to measure the actualcapacity by measuring variations in operating conditions or capacitysuch as variations in input voltage (Vcc), output voltage (Vout) andoutput current (Iout), temperature, “fast” or “slow” circuit conditionand other operating conditions. These conditions can be measured using aconstant current or constant voltage technique.

[0038] Once the actual capacity of the charge pump has been measured,the capacity of the charge pump can be reset at 64 based on the measuredcapacity. In one embodiment discussed above, the actual capacity can bemeasured during the manufacturing process to allow the capacity of thecharge pump to be reset permanently based on the actual capacity. Inanother embodiment, the capacity can be measured while the charge pumpcircuit is operating in a computer system to permit the capacity to becontinuously and dynamically adjusted to real time operating conditions.

[0039] The foregoing techniques can improve the data programming anderasing throughput in flash memory devices such as flash EEPROM devices.Products that use flash memory devices are becoming increasingly popularfor storing data. As a result, the memory size densities of thesedevices have increased causing the programming and erasing times toincrease. By using the techniques discussed above, the time to programand erase the devices can be reduced to allow higher memory size densitydevices to be deployed in a cost efficient manner. In addition,electronic devices or components that include charge pumps such asvoltage regulators can use the techniques.

[0040] By using the foregoing techniques, power consumption can bereduced in flash memory devices. Battery operated computing devices thatuse flash memory devices such as cellular phones, personal digitalassistants (PDAs) and portable computers can benefit from such areduction in power consumption. Moreover, the amount of flash memorystorage can be increased to take advantage of the extra batteryoperating capacity that is made available.

[0041] Various modifications may be made to the foregoing IDembodiments. For example, the output voltage (Vout) can be adjusted byamounts other than 1-volt increments and/or the output current (Iout)can be adjusted by amounts other than 1-milliamp increments. Otherimplementations are within the scope of the following claims.

What is claimed is:
 1. An apparatus comprising: a charge pump having acapacity that is preset to a particular value; and a measuring circuitto measure an actual capacity of the charge pump and to reset thecapacity of the charge pump to a value based on the measured capacity.2. The apparatus of claim 1 wherein an output of the charge pump ispreset to operate at particular voltage and current levels.
 3. Theapparatus of claim 1 wherein the measuring circuit includes atemperature sensor.
 4. The apparatus of claim 1 wherein the measuringcircuit includes a voltage sensor to sense a voltage at an input of thecharge pump.
 5. The apparatus of claim 1 wherein the measuring circuitincludes a voltage sensor to sense a voltage at an output of the chargepump.
 6. The apparatus of claim 1 wherein the measuring circuit includesa current sensor to sense a current at an output of the charge pump. 7.An apparatus comprising: an array of memory cells; and a charge pumpcircuit coupled to the array of memory cells to drive the array ofmemory cells, the charge pump circuit comprising: a charge pump having acapacity that is preset to a particular value, and a measuring circuitto measure an actual capacity of the charge pump and to reset thecapacity of the charge pump to a value based on the measured capacity.8. The apparatus of claim 7 wherein an output of the charge pump ispreset to operate at particular voltage and current levels.
 9. Theapparatus of claim 7 wherein the measuring circuit includes atemperature sensor.
 10. The apparatus of claim 7 wherein the measuringcircuit includes a voltage sensor to sense a voltage at an input of thecharge pump.
 11. The apparatus of claim 7 wherein the measuring circuitincludes a voltage sensor to sense the voltage at an output of thecharge pump.
 12. The apparatus of claim 7 wherein the measuring circuitincludes a current sensor to sense a current at an output of the chargepump.
 13. A computer system comprising: a central processor; and amemory coupled to the central processor, the memory comprising: an arrayof memory cells, and a charge pump circuit coupled to the array ofmemory cells to drive the array of memory cells, the charge pump circuitcomprising: a charge pump having a capacity that is preset to aparticular value, and a measuring circuit to measure an actual capacityof the charge pump and to reset the capacity of the charge pump to avalue based on the measured capacity.
 14. The computer system of claim13 wherein an output of the charge pump is preset to operate atparticular voltage and current levels.
 15. The computer system of claim13 wherein the measuring circuit includes a temperature sensor.
 16. Thecomputer system of claim 13 wherein the measuring circuit includes avoltage sensor to sense a voltage at an input of the charge pump. 17.The computer system of claim 13 wherein the measuring circuit includes avoltage sensor to sense a voltage at an output of the charge pump. 18.The computer system of claim 13 wherein the measuring circuit includes acurrent sensor to sense the current at an input of the charge pump. 19.A method comprising: measuring a capacity of a charge pump; andresetting the capacity of the charge pump to a value based on themeasured capacity.
 20. The method of claim 19 further comprisingpresetting a capacity of the charge pump to a particular value.
 21. Themethod of claim 20 wherein presetting a capacity of the charge pump to aparticular value includes presetting the charge pump to particularvoltage and current levels.
 22. The method of claim 19 wherein measuringthe capacity of the charge pump includes measuring a temperature of thecharge pump.
 23. The method of claim 19 wherein measuring the capacityof the charge pump includes measuring a voltage at an input of thecharge pump.
 24. The method of claim 19 wherein measuring the capacityof the charge pump includes measuring a voltage at an output of thecharge pump.
 25. The method of claim 19 wherein measuring the capacityof the charge pump includes measuring a current at an output of thecharge pump.